In Asynchronous Transfer Mode (ATM) networks, network endpoints communicate via virtual channel connections (VCC). There are typically two methods by which a VCC may be established. In one method a permanent virtual circuit (PVC) is manually configured at each of the ATM switches between the two endpoints In another method the first ATM endpoint sends a “SETUP” message in accordance with the ATM access signaling protocol also referred to as the user-network interface (UNI) protocol, to an ATM switch to which it is connected. The ATM switch then communicates with other ATM switches to which it is attached in accordance with the ATM network signaling protocol also referred to as the network-node interface (NNI) protocol, until a path is found to the desired second ATM endpoint. The second ATM endpoint then accepts (or rejects) the connection, thus allowing communications to begin between the endpoints via the VCC Such a VCC is referred to as a switched virtual circuit (SVC).
A VCC is comprised of a sequence of virtual channels (VC), where each VC is defined by a logic connection between two ATM network nodes over a physical link between a port on one node and a port on the other node. For purposes of simplicity, “nodes” as referred to herein include both ATM endpoints and ATM switches. Thus, a VCC between a two endpoints A and D which is switched by two switches B and C along the path A-B-C-D comprises three VCs, one each between A and B, B and C, and C and D. Each VC is identified in the two switches at either end of the VC by a virtual channel identifier (VCI), and typically by a virtual path identifier (VPI) as well, both identifiers being assigned at the various switches along the VCC, either manually, or in accordance with signaling protocols. Commonly in ATM networks, the VPI/VCI of each VC vary along a single VCC, and it is the responsibility of each switch along the VCC to map each incoming VC to each outgoing VC by maintaining in memory the switch port and VPI/VCI of one VC and its mapping to the switch port and VPI/VCI of the next VC. Each ATM endpoint also typically keeps track of the endpoint port and VPI/VCI for each VC through which the endpoint communicates.
In ATM networks, as in other networks, knowledge of the network's topology, or the interconnections between network elements, has such uses as determining the location of network faults and determining the shortest communications path between two endpoints. In ATM networks with SVC support, as well as networks with open shortest path first (OSPF) or routing information protocol (RIP) support, the underlying network manages the topology via some addressing scheme, thus allowing management functions to request this information from the network without need for further topology discovery. In ATM networks without inherent topology support, such as ATM PVC networks, however, more indirect methods must be used. Certain prior art topology discovery methods utilize a process of flooding of topology information within the network In such systems, each device transmits on each of its links link state information to each of its neighbors and each of its neighbors, in turn, transmit the message to each of its own neighbors. In this manner, eventually, the entire network topology can be computed at each device in the network. It will be readily seen that in such systems, the use of a flooding technique can lead to infinite loops, in the absence of some control. Further, even with such control, a large number of messages are generated.